Tipus | llenguatge de programació, llenguatge de programació multiparadigma, llenguatge de programació funcional, llenguatge de programació procedural i metaprogramming language (en) |
---|---|
Data de creació | 1975 |
Disseny | Guy L. Steele i Gerald Jay Sussman |
Paradigma de programació | programació funcional, programació procedimental, metaprogramming (en) i llenguatge imperatiu |
Darrera versió estable | R7RS-small () |
Dialecte de | Lisp |
Influenciat per | Lisp, ALGOL i MDL |
Extensió dels fitxers | scm i ss |
Pàgina web | scheme-reports.org |
El llenguatge de programació Scheme és un llenguatge funcional (si bé "impur", ja que, per exemple, les seves estructures de dades no són immutables) i un dialecte de Lisp. Fou desenvolupat per Guy L. Steele i Gerald Jay Sussman en la dècada dels setanta i introduït en el món acadèmic a través d'una sèrie d'articles coneguts com el Lambda Papers de Sussman i Steele.
La filosofia de Scheme és decididament minimalista. El se objectiu no és acumular un gran nombre de funcionalitats, sinó d'evitar les debilitats y restriccions que fan necessària la seva addició. Així, Scheme proporciona el mínim nombre possible de nocions primitives, construït la resta basant-se en aquest reduït nombre d'abstraccions. Per exemple, el mecanisme principal pel control de flux són les crides recursives finals.
Scheme fou el primer dialecte de Lisp que utilitzà àmbit estàtic o lèxic (en lloc de dinàmic) de forma exclusiva. També fou un dels primers llenguatges de programació amb continuacions explícites. Scheme ofereix també gestió automàtica de memòria (recol·lecció de brossa).
Les llistes són l'estructura de dades bàsica del llenguatge, que també ofereix "arrays" entre els seus tipus predefinits. degut a la seva especificació minimalista, no hi ha sintaxi explícita per a crear registres o estructures, o per programació orientada a objectes, però moltes implementacions ofereixen les esmentades funcionalitats
Scheme, originalment, s'anomenava "Schemer", continuant la tradició dels llenguatges Planner i Conniver. El seu nom actual és a causa del fet que els seus autors utilitzaven el sistema operatiu ITS, que limitava la longitud dels noms de fitxers a 6 caràcters